第 4 章  ·  Prompt五要素

第4章 第10节 Prompt五要素


第4章 第10节 Prompt五要素

阅读指南

上一节了解了需要提示词工程的场景。现在系统学习Prompt的五要素——角色、任务、上下文、格式、约束,这是设计优秀提示词的核心框架。

10.1 Prompt的五要素

一个优秀的Prompt通常包含以下五个要素。不是每个Prompt都需要全部五个,但理解这些要素能帮你设计出更有效的提示词。

角色(Role)

告诉AI它应该扮演什么角色,以什么身份回答。AI会根据角色调整回答的专业度、风格和语气,明确角色也能激活模型中相关的知识和能力。

示例

# 没有角色定义
"请帮我分析这段代码"

# 有角色定义
"你是一位资深的Python架构师,拥有10年的大型项目经验。请帮我分析这段代码。"

常用角色模板

场景 角色定义
代码审查 "你是资深软件工程师,擅长代码审查和性能优化"
文案写作 "你是专业的营销文案撰稿人,擅长撰写吸引人的广告语"
教学辅导 "你是耐心的编程导师,擅长用简单的语言解释复杂概念"
数据分析 "你是数据分析专家,擅长从数据中发现洞察"

任务(Task)

明确告诉AI要做什么。模糊的任务会得到模糊的结果,清晰的任务描述是高质量输出的前提。

对比示例

# Bad:模糊的任务
"帮我处理这段文字"

# Good:清晰的任务
"请将以下文字翻译成英文,保持原文的专业性和简洁性"

任务描述的SMART原则

上下文(Context)

提供必要的背景信息,帮助AI更好地理解任务。AI不知道你的具体情况,需要你提供上下文,充分的上下文能大幅提升回答的相关性和准确性。

示例

# Bad: 缺少上下文
"帮我写一个AI代码助手的产品介绍"

# Good: 提供上下文
"""我们的产品是一款面向程序员的AI代码助手。
目标用户:Python开发者,有1-3年经验
使用场景:日常编码、代码审查、学习新技术
核心优势:比ChatGPT更懂Python生态,响应速度快3倍

请帮我写一个产品介绍,控制在50字以内。"""

格式(Format)

明确输出的格式要求。结构化的输出便于程序处理,清晰的格式规范能避免后续解析困难。

示例

# Bad: 没有格式要求
"分析这段代码的问题"

# Good: 明确格式要求
"""分析这段代码的问题,并按以下格式输出:

问题列表:
1. [问题类型] 问题描述(所在行号)
2. [问题类型] 问题描述(所在行号)

建议修改:
[具体的代码修改建议]

优先级:
- 高优先级:必须修复的问题
- 中优先级:建议优化的地方
- 低优先级:可选的改进"""

常用格式

  1. 列表格式
要求:以Markdown列表形式输出
示例:
- 第一点
- 第二点
  1. JSON格式
{
  "task": "代码审查",
  "issues": [
    {"type": "性能", "line": 23, "description": "..."}
  ]
}
  1. 表格格式
| 指标 | 数值 | 评估 |
|------|------|------|
| ... | ... | ... |

约束(Constraints)

明确告诉AI什么不能做,什么必须遵守,从而防止AI偏离主题、确保输出符合特定规范、避免不必要的冗余。

示例

"""请翻译以下文本成英文。

约束条件:
- 只返回翻译结果,不要添加任何解释
- 不要输出原文
- 保持原文的段落格式
- 专有名词保持原样,不翻译"""

常见约束类型

约束类型 示例
长度限制 "控制在200字以内"
禁止内容 "不要包含个人观点"
格式限制 "只返回JSON,不要Markdown"
语言限制 "只用中文回答"
知识范围 "仅基于提供的文档,不要使用外部知识"

10.2 下一节预告

掌握了Prompt五要素后,接下来学习结构化输出和常用模板——让AI输出精确的JSON格式,以及拿来即用的Prompt模板库。

10.3 ■ 学点英语

中文 English 音标 说明
角色 Role /roʊl/ 告诉AI以什么身份回答问题,激活相关知识和能力
任务描述 Task Description /tæsk dɪˈskrɪpʃn/ 明确告诉AI需要执行的具体操作
上下文 Context /ˈkɑːntekst/ 提供背景信息帮助AI更好地理解任务
输出格式 Output Format /ˈaʊtpʊt ˈfɔːrmæt/ 规定AI回复的结构和样式要求
约束条件 Constraints /kənˈstreɪnts/ 告诉AI不能做什么、必须遵守什么规则

10.4 ■ 思考帧

Prompt基础与必要场景 结构化输出与常用模板
本节目录